/**
 * @name Dutt
 */

import Axios from "./../utils/axios";
import api from "./../api/index"
// 部门表回显
function showDepartment() {
    return Axios.get(api.systemSettings.showDepartment);
}
/**
 * 新增部门
 * @param {string} departmentName 部门名称
 * @param {string} departmentNumber 部门编号
 * @param {int} fid 部门父id
 */
function departmentAdd(departmentName, departmentNumber, fid) {
    return Axios.post(api.systemSettings.departmentAdd, {
        departmentName,
        departmentNumber,
        fid
    })
}
/**
 * 查询所有用户信息
 * @param {int} limit 每页条数
 * @param {string} name 用户名
 * @param {int} page 当前页数
 * @returns 
 */
function queryUserAll(limit, name, page) {
    return Axios.post(api.systemSettings.queryUserAll, {
        limit,
        name,
        page
    })
}
/**
 * 修改用户所属部门
 * @param {int} did 部门id
 * @param {int} uid 用户id
 */
function updateDepartment(did, uid) {
    return Axios.post(api.systemSettings.updateDepartment, {
        did, uid
    })
}
/**
 * 添加用户
 * @param {string} name 姓名
 * @param {string} password 密码
 * @param {string} username 用户名
 * @returns 
 */
function userAdd(name, password, username) {
    console.log(name, password, username);
    return Axios.post(api.systemSettings.userAdd, {
        name, password, username
    })
}
/**
 * 配置用户角色
 * @param {Array} rid 角色id
 * @param {int} uid 用户id
 * @returns 
 */
function userRole(rid, uid) {
    return Axios.post(api.systemSettings.userRole, {
        rid, uid
    })
}
/**
 * 修改用户信息
 * @param {int} id id
 * @param {string} name 姓名
 * @param {string} password 密码
 * @param {string} username 用户名
 * @returns 
 */
function userUpdate(id, name, password, username) {
    console.log(id, name, password, username);
    return Axios.post(api.systemSettings.userUpdate, {
        id, name, password, username
    })
}
/**
 * 根据id回显修改信息
 * @param {int} id 
 * @returns 
 */
function userById(id) {
    return Axios.get(api.systemSettings.userById + '/' + id)
}
/**
 * 
 * @param {int} id 需要删除的部门id
 * @returns 
 */
function delDepartmentById(id) {
    console.log("ids", id);
    return Axios.get(api.systemSettings.delDepartmentById + "/" + id)
}
/**
 * 查询所有角色
 * @param {*} limit 每页条数
 * @param {*} name 查询名字
 * @param {*} page 当前页
 * @returns 
 */
function roleAll(limit, name, page) {
    console.log("serivce", limit, name, page);
    return Axios.post(api.systemSettings.roleAll, {
        limit, name, page
    })
}
/**
 * 修改角色信息
 * @param {int} id 角色id
 * @param {string} roleDesc 角色描述
 * @param {string} roleName 角色名称
 * @returns 
 */
function roleUpdate(id, roleDesc, roleName) {
    return Axios.post(api.systemSettings.roleUpdate, { id, roleDesc, roleName })
}
/**
 * 获取全部权限列表
 * @returns 
 */
function queryListPerms() {
    console.log("inner0");
    return Axios.get(api.systemSettings.queryListPerms)
}
/**
 *  获取当前登录角色获取的拥有权限信息
 * @returns 
 */
function queryCurrentRole(id) {
    return Axios.get(api.systemSettings.queryCurrentRole + "/" + id)
}
/**
 * @name 配置角色权限
 * @param {Array} ids 选择的权限id
 * @param {int} rid 角色id 
 */
function permUpdate(ids, rid) {
    return Axios.post(api.systemSettings.permUpdate, {
        ids, rid
    })
}
/**
 * 新增角色·
 * @param {string} roleDesc 角色描述
 * @param {string} roleName 角色名称
 * @returns 
 */
function addRole(roleDesc, roleName) {
    return Axios.post(api.systemSettings.addRole, {
        roleDesc, roleName
    })
}
/**
 * 删除角色
 * @param {int} id 角色idid
 * @returns 
 */
function deleteRole(id) {
    return Axios.get(api.systemSettings.deleteRole + id)
}
/**
 * 删除用户
 * @param {*} id 用户id
 * @returns 
 */
function UserDelete(id) {
    return Axios.get(api.systemSettings.UserDelete + "/" + id)
}
export default {
    showDepartment,
    departmentAdd,
    updateDepartment,
    queryUserAll,
    userAdd,
    userRole,
    userUpdate,
    userById,
    delDepartmentById,
    roleAll,
    roleUpdate,
    queryListPerms,
    queryCurrentRole,
    permUpdate,
    addRole,
    deleteRole,
    UserDelete
}